﻿namespace Sidvall.Data
{
	public class TransactionSettings
	{
		public Sidvall.Data.TransactionScopeAsyncFlowOption AsyncFlowOption { get; set; }
		public Sidvall.Data.TransactionScopeOption ScopeOption { get; set; }
		public Sidvall.Data.IsolationLevel IsolationLevel { get; set; }
		public System.TimeSpan? Timeout { get; set; }

		public TransactionSettings()
		{
			this.AsyncFlowOption = TransactionScopeAsyncFlowOption.Enabled;
			this.IsolationLevel = IsolationLevel.Serializable;
			this.ScopeOption = TransactionScopeOption.Required;
			this.Timeout = null;
		}
	}
}
